package jmine.tec.persist.transaction;

/**
 * Define a ação que vai ser executada dentro da transação.
 * 
 * @author Rafael Volpato
 * @date Oct 2, 2009
 * @param <T> tipo do dado retornado pela ação
 * @deprecated usar Callable no lugar
 */
public interface TransactionalAction<T> {

    /**
     * Executa a ação.
     * 
     * @return o resultado da execução.
     * @throws Exception se ocorrer algum erro durante a execução
     */
    T execute() throws Exception;
}
